﻿using SD.Infrastructure.DTOBase;
using SD.OpcProxy.ValueObjects.Enums;
using System.Runtime.Serialization;

namespace SD.OpcProxy.IAppService.DTOs.Outputs
{
    /// <summary>
    /// OPC服务器数据传输对象
    /// </summary>
    /// <remarks>勿忘[DataMember]</remarks>
    [DataContract(Namespace = "http://SD.OpcProxy.IAppService.DTOs.Outputs")]
    public class OpcServerInfo : BaseDTO
    {
        #region OPC模式 —— OpcMode Mode
        /// <summary>
        /// OPC模式
        /// </summary>
        [DataMember]
        public OpcMode Mode { get; set; }
        #endregion

        #region Ping间隔 —— int PingInterval
        /// <summary>
        /// Ping间隔
        /// </summary>
        /// <remarks>单位：秒</remarks>
        [DataMember]
        public int PingInterval { get; set; }
        #endregion

        #region 监听间隔 —— int MonitorInterval
        /// <summary>
        /// 监听间隔
        /// </summary>
        /// <remarks>单位：毫秒</remarks>
        [DataMember]
        public int MonitorInterval { get; set; }
        #endregion

        #region 超时时间 —— int Timeout
        /// <summary>
        /// 超时时间
        /// </summary>
        /// <remarks>单位：秒</remarks>
        [DataMember]
        public int Timeout { get; set; }
        #endregion
    }
}
